function a() {
    function b() {
        function c() {

        }
        c()
    }
    b()
}
a()


// a ddefiined  a.[[scope]] --> 0:GO{}

// a doing a.[[scope]] --> 0:aAO{}
//                         1:GO{}
                        

// b ddefiined b.[[scope]] -->0:aAO{}
//                            1:Go{}
// b doing b.[[scope]]  --> 0:bAO{}
//                          1:aAO{}
//                          2:GO{}

// c ddefiined c.[[scope]]  -->0:bAO{}
//                             1:aAO{}
//                             2:GO{}
// c doing c.[[scope]] -->0:cAO{}
//                        1:bAO{}
//                        2:aAO{}
                    //    3:GO{}